<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // json:   数组或者对象格式的字符串


        // 为什么有json 
        //    在不同的语言里面，js / java / php ...
        //    在数据交互过程中，前端需要后面传一个数组  ，后端是java     

        // [name => 'xx' , age => 18]   不同的语言，数组和对象的语法有一些区别

        // 前后端有一种通用的数据格式叫做json


        // json本质上就是字符串，但是他是特殊的字符串

        // 在js当中，有一种对象叫做JSON
        //    JSON.parse()   把json格式的字符串转成数组或者对象
        //    JSON.stringify()   把数组或者对象转成json格式的字符串

        // var str = "[1,2,3]" ;
        // console.log(str) ;


        // json格式的对象，属性名必须是字符串  必须使用双引号
        // var json = '{"name" : "cc" , "age" : 18}' ;
        // console.log(json) ;


        // // 普通字符串
        // var str = 'hello' ;









        var arr = [1,2,3] ;
        var json = JSON.stringify(arr);

        console.log(arr);
        console.log(json);


        var arr2 = JSON.parse(json) ;
        console.log(arr2);


        var obj = {name : 'cc' , age : 17} ;

        var json2 = JSON.stringify(obj) ;
        console.log(json2);   // '{"name" : "cc" , "age" : 17}'


        // var json3 = '{"name" : "cc" , "age" : 17}' ;
        // var json3 = '{name : "cc" , "age" : 17}' ;   // 这不是json格式的对象
        var json3 = "{'name' : 'cc' , 'age': 17}" ;
        var obj2 = JSON.parse(json3) ;
        console.log(obj2);



        // 如果转化的过程中报错了，说明不是json




    </script>
    
</body>
</html>